課程資訊
課程名稱
資料庫系統-從SQL到NoSQL
Database Management System – from SQL to NoSQL 
開課學期
108-1 
授課對象
電機資訊學院  電機工程學研究所  
授課教師
駱明凌 
課號
EE5178 
課程識別碼
921 U2560 
班次
 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期二7,8,9(14:20~17:20) 
上課地點
電二145 
備註
總人數上限:80人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1081EE5178_DBMS 
課程簡介影片
 
核心能力關聯
本課程尚未建立核心能力關連
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

Database processing and database management systems (DBMS) have been a corner stone of modern society. In science, engineering, business and enterprise alike, data play a central role in their progress. With recent developments in the fields of big data, machine learning, social networks, cloud computing and Internet of Things, to name a few, increases in data volume and manifestations of new data patterns have made the study of databases both more interesting and more challenging. In this course, we cover the theory and practice of database management systems. We discuss the modeling, programming, management, architecture and implementation aspects of DBMS, study the evolution from well-established relational SQL databases to the new NoSQL databases, and cover the newest trends in database research brought about by the challenges of the big data analytics. 

課程目標
1. Acquire basic knowledge and concepts about databases and database management systems (DBMS)
2. Obtain basic capabilities of programming for databases, and basic capabilities of operating a DBMS
3. Learn the design thinking and rationales behind various database technologies -- hope one day to use these design reasoning skills in real-life designs
4. Learn the design thinking and rationales for large (often distributed) software systems 
課程要求
Understanding of programming languages, capability to use a programming language (at least one of C/C++, Java, Python. Already knowing Python is a plus.)
Understanding of basic data structures (Lists, trees, hash tables, etc.)
Familiarity in the use of computer (PC)
Ability to search for and utilize resources online 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
待補 
參考書目
Fundamentals of Database Systems (7th Edition)
by Ramez Elmasri (Author),‎ Shamkant B. Navathe (Author)
Database Management Systems, 3rd Edition
by Raghu Ramakrishnan (Author),‎ Johannes Gehrke (Author) 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
Class Participation 
5% 
課堂參與 
2. 
Final project 
25% 
期末專題研究及報告 
3. 
Examination 
20% 
考試 
4. 
Homework 
50% 
作業 
 
課程進度
週次
日期
單元主題
第1週
9/10  Introduction - database modeling, languages and implementation
 
第2週
9/17  Conceptual modeling - the entity-relationship model 
第3週
9/24  The relational database model - concepts and constraints 
第4週
10/01  Basic SQL;
The concept of transactions 
第5週
10/08  Relational algebra;
Advanced SQL 
第6週
10/15  RDB design;
Functional dependencies and DB normalization 
第7週
10/22  XML-DB and Object DB - models and languages;
Discussion about final project 
第8週
10/29  Graph DB - models and languages 
第9週
11/05  Database interface to programming languages;
Server-side programming; Window functions; 
第10週
11/12  Physical database design - storage, indexing, transaction processing and concurrency control techniques 
第11週
11/19  Query processing and query optimization concepts;
 
第12週
11/26  Big data technology and Distributed database concepts 
第13週
12/03  Examination 
第14週
12/10  NOSQL and NewSQL - database model and programming 
第15週
12/17  NoSQL and NewSQL - system implementations 
第16週
12/24  Databases in software architectures;
Other Advanced topics 
第17週
12/31  Final project presentation I 
第18週
1/07  Final project presentation II